1. Field of the Invention
Embodiments of the present invention relate to computer graphics applications and 3D modeling.
2. Background Art
Computer graphics applications can render three-dimensional (3D) models representing real world objects. These real world objects can include geographical locations. Some locations can be large with many detailed features, including natural landmarks and man-made structures. Some graphics applications can model large portions of a city where buildings, structures and landmarks are modeled in a manner that is increasingly true to life.
A 3D model of a target object can be enhanced with multiple 2D images of the real object. Oblique images, or images taken at an angle oblique to the surface of the earth or target, may be obtained from various viewpoints around a target where the target is in view. For example, aerial pictures of city buildings and landmarks can be taken from different angles above a city. FIG. 1 shows a typical method 100 for collecting images of a city. An airplane 102 may fly over a city in a grid-like pattern shown by paths 104, 106 and 108. Various pictures of city features, such as buildings 110 and 112 may be taken from different viewpoints depending on the location of airplane 102 when the picture was taken.
Photographers may capture dozens of pictures for each of many targets. The images may be used to show certain geographical locations or to enhance 3D models of a location. For example, multiple images can be used to display the actual appearance of a building more clearly in a 3D model of a city block. However, there are often many oblique pictures of many targets, making it difficult for a graphics developer to maintain the spatial relationship between each target's 3D model and all the images taken from different viewpoints of the target.
In some cases, a single picture may contain multiple targets. This picture may be taken from a great distance while the 3D model is developed as if from a much closer distance. This difference in viewpoint distances can make it hard to visualize the relevant pixels of a target when zooming into a smaller geographical area. Further complicating this effort is the necessity of a developer to move around from viewpoint to viewpoint while enhancing the 3D models. These issues can cause users and developers to be less efficient and even overwhelmed.